home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 April / EnigmA AMIGA RUN 17 (1997)(G.R. Edizioni)(IT)[!][issue 1997-04][EAR-CD].iso / EARCD / util / moni / WatchOpenDev.lha / WatchOpenDevice.doc < prev   
Text File  |  1996-12-02  |  7KB  |  203 lines

  1.                     +-----------------------------+
  2.                           WatchOpenDevice 1.8
  3.  
  4.                        © 1996 by Matthias Andree
  5.                     +-----------------------------+
  6.  
  7.  
  8.  
  9. DISCLAIMER, COPYRIGHT -- see below
  10.  
  11. Copyright 1996 Matthias Andree.
  12.  
  13. See below for precise explanation.
  14.  
  15.  
  16. ------------------------------------------------------------------------
  17. INTRODUCTION -- what is it
  18.  
  19. WatchOpenDevice monitors OpenDevice() calls in a safe way (Hey, it  uses
  20. Semaphores  and  does  no  I/O  on  the schedule of the caller) and more
  21. verbosely than SnoopDOS 3.0 by Eddy Carrol does.
  22.  
  23.  
  24. ------------------------------------------------------------------------
  25. MOTIVATION -- why is it
  26.  
  27. When trying to debug HyperCOM40.device by VMC/Harald Frank, I needed  to
  28. check  which  parameters were used when opening devices, so I wrote this
  29. tool. It should be pretty safe, it is small.
  30.  
  31.  
  32. ------------------------------------------------------------------------
  33. INSTALLATION -- this is the easy part
  34.  
  35. If you have PGP and MD5SUM installed, execute the CHECK script  (have  a
  36. look at it before) to check the archive integrity.
  37.  
  38. Copy WatchOpenDevice wherever you like and you will find it, it is best
  39. put somewhere in your shell command search path.
  40.  
  41.  
  42. ------------------------------------------------------------------------
  43. USAGE -- even easier
  44.  
  45. Just type WatchOpenDevice in your shell to start it, send it CTRL-C  (by
  46. pressing  this  sequence  in  its  window  or  by  using the BREAK shell
  47. command) to end it.
  48.  
  49. WatchOpenDevice cannot be started twice (see history). If you try to, it
  50. will  show  up  a  requester and ask you if you want to remove the first
  51. copy running. If you click "remove", both copies will quit, if you click
  52. "abort", the first copy will stay in memory.
  53.  
  54. It will show you output about the  parameters  used  in  the  OpenDevice
  55. call. Let us have a look at an example output:
  56.  
  57. Device                      Unt IOReqst  Flags    SF Task
  58. --------------------------- --- -------- -------- -- -------------------
  59. hyperCOM40.device             0 0827F560 00000000 A4 term
  60.  
  61. Device, Unt, IORequest and Flags are as given in the call. Task  is  the
  62. Task  or  Process  name  of  the caller, and SF is something special: it
  63. reflects the contents of io_SerFlags.
  64.  
  65. Although it is shown every time an OpenDevice() happens (this causes  no
  66. harm,  even  for other devices), it is only meaningful for serial.device
  67. compatibles.
  68.  
  69.  
  70. This is the meaning of io_SerFlags (bit-by-bit-basis):
  71.  
  72. 80 SERF_XDISABLED - XOn/XOff is disabled
  73.  
  74. 40 SERF_EOFMODE - if set, device checks agains io_TermArray
  75.  
  76. 20 SERF_SHARED - if set, other tasks using this bit can access this
  77.                  device at the same time
  78.  
  79. 10 SERF_RAD_BOOGIE - hi-speed mode. Sets data format to 8N1 (no parity,
  80.                      8 bit), disables XOn/XOff and do not test for break
  81.                      signals
  82.  
  83. 08 SERF_QUEUEDBRK - if set, break commands are queued and
  84.                     inserted into the data stream instead of being
  85.                     reported instantaneously
  86. 04 SERF_7WIRE - if set, device will use 7-wire (RTS/CTS) handshaking
  87.  
  88. 02 SERF_PARTY_ODD - selects odd parity
  89.  
  90. 01 SERF_PARTY_ON - switch on parity checking.
  91.  
  92. Note:  Full  diagnostic  of  parity  settings  would   require   showing
  93. io_ExtFlags also. This is not yet implemented, as I do not need it. Most
  94. connections are in 8N1 format anyways.
  95.  
  96.  
  97. ------------------------------------------------------------------------
  98. NOTES
  99.  
  100. Has been compiled using SAS/C 6.57. Source code is available from author
  101. upon request.
  102.  
  103. Has been tested on A4000 with CyberStorm board and OS  3.0  with  SetMan
  104. running  (on Aminet also). SetMan can be found on Aminet or Aminet Set 1
  105. Disc A, in util/boot/setman10g.lha - it is 13 K in size.
  106.  
  107.  
  108. ------------------------------------------------------------------------
  109. AUTHOR
  110.  
  111. Matthias Andree
  112. Stormstr. 14
  113. 58099 Hagen
  114. Germany
  115.  
  116. E-Mail: m_andree@tribal.line.org            PGP welcome here
  117.         mandree@sx1.hrz.uni-dortmund.de    MIME welcome here
  118. -----------------------------------------------------------------------
  119. DISCLAIMER, COPYRIGHT -- legal stuff
  120.  
  121. Copyright 1996 Matthias Andree
  122.  
  123. Copying
  124. -------
  125. Commercial use without prior written consent  of  copyright  holders  is
  126. prohibited.  This  also  applies  to magazine's cover disks other CD-ROM
  127. collections than stated below and Arktis, Pawlowski and  TIME  disks  in
  128. particular.
  129.  
  130. Permission is granted to distribute this file without profit as long  as
  131. is  distributed  as  entire,  unmodified  archive  and if no more than a
  132. reasonable media cost is charged. This "reasonable media cost" MUST  NOT
  133. exceed DM 2,- or the equivalent in other currencies.
  134.  
  135. Permission is also granted to distribute this package on Meeting Pearls,
  136. Aminet and Cronus CD-ROM - not exceeding the suggested retail prices (DM
  137. 30,- per CD-ROM contained in package) - as well as SaarAG PD disks.
  138.  
  139. Permission is granted to distribute this in BBS  and  offer  it  on  FTP
  140. servers, provided that these allow unaccounted, anonymous access free of
  141. charge.
  142.  
  143. Disclaimer
  144. ----------
  145. There is no warranty for the  WatchOpendevice  Package,  to  the  extent
  146. permitted by applicable law. Except when otherwise stated in writing the
  147. copyright holder or any other party which  may  distribute  the  package
  148. provides  the  program  "as  is"  without  warranty  of any kind, either
  149. expressed or  implied,  including,  but  not  limited  to,  the  implied
  150. warranties  of merchantability and fitness for a particular purpose. The
  151. entire risk as to the quality and performance of  the  program  is  with
  152. you.  Should  the  program  prove  defective, you assume the cost of all
  153. necessary servicing, repair or correction.
  154.  
  155. In no event unless required by applicable law or agreed  to  in  writing
  156. will  the  copyright  holder  or  any  other  party be liable to you for
  157. damages, including any general,  special,  incidental  or  consequential
  158. damages  arising  out  of  the  use  or  inability  to  use  the program
  159. (including but not limited to  loss  of  data  or  data  being  rendered
  160. inaccurate  or  losses sustained by you or third parties or a failure of
  161. the program to operate with any other programs), even if  the  copyright
  162. holder  or  other  party  has  been  advised  of the possibility of such
  163. damages.
  164.  
  165.  
  166. ------------------------------------------------------------------------
  167. CREDITS
  168.  
  169. Mohammad Asiri <m.asiri@csu-e.csuohio.edu>
  170.   for reporting trouble with my checksums
  171.  
  172. Nils Goers <N.Goers@Art-line.de>
  173.   who suggested the check to prevent running WatchOpenDevice twice
  174.  
  175.  
  176. ------------------------------------------------------------------------
  177. HISTORY
  178.  
  179. NOTA BENE: Minor changes are  not  noted  here.  Thus,  the  history  is
  180. complete,  although  it  shows the changes only up to 1.5 whereas 1.8 is
  181. the current version.
  182.  
  183.  
  184. WatchOpenDevice 1.2 (24.11.96) 21:25:12 by mandree@sx1.hrz.uni-dortmund.de
  185.  
  186. Added io_SerFlags to output.
  187.  
  188.  
  189. WatchOpenDevice 1.3 (1.12.96) 23:46:05 by mandree@sx1.hrz.uni-dortmund.de
  190.  
  191. Can only be started if not yet active.
  192.  
  193.  
  194. WatchOpenDevice 1.4 (1.12.96) 23:55:27 by mandree@sx1.hrz.uni-dortmund.de
  195.  
  196. Added requester which pops up if started twice.
  197.  
  198.  
  199. WatchOpenDevice 1.5 (1.12.96) 23:59:25 by mandree@sx1.hrz.uni-dortmund.de
  200.  
  201. Added option to remove first copy if started twice.
  202.  
  203.